Speech applications are rapidly becoming commonplace in everyday life. A speech application may be defined as a machine-implemented application that performs tasks automatically in response to speech of a human user and which responds to the user with audible prompts, typically in the form of recorded or synthesized speech. For example, speech applications may be designed to allow a user to make travel reservations or buy stock over the telephone, without assistance from a human operator. The interaction between the person and the machine is referred to as a dialog.
Automatic speech recognition (ASR) is a technology used to allow machines to recognize human speech. Commonly, an ASR system includes a speech recognition engine, which uses various types of data models to recognize an utterance. These models typically include language models, acoustic models, grammars, and a dictionary.
It is desirable for speech applications and speech recognition systems to provide more personalized experiences for their users and to respond more intelligently to the users and their environments. In addition, it is desirable to have the ability to analyze accumulated data representing dialogs, to identify demographics and other characteristics of the users and their environments.